home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIX Base Documentation 1998 November
/
IRIX 6.5.2 Base Documentation November 1998.img
/
usr
/
share
/
catman
/
u_man
/
cat1
/
phandler.z
/
phandler
Wrap
Text File
|
1998-10-30
|
9KB
|
199 lines
PPPPHHHHAAAANNNNDDDDLLLLEEEERRRR((((1111)))) IIIImmmmpppprrrreeeessssssssaaaarrrriiiioooo PPPPHHHHAAAANNNNDDDDLLLLEEEERRRR((((1111))))
NNNNAAAAMMMMEEEE
phandler - generic parallel printer driver
SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
_p_h_a_n_d_l_e_r ----PPPP pppprrrriiiinnnntttteeeerrrrnnnnaaaammmmeeee [ options ] [ inputfile ]
Where [ options ] consist of one or more of:
[ ----eeee ]
[ ----ssss ]
[ ----wwww ]
[ ----DDDD ]
[ ----LLLL logfilename ]
[ ----RRRR ]
[ ----BBBB buffersize ]
[ ----IIII ]
[ ----uuuu ]
[ ----SSSS papersize ]
[ ----dddd ]
[ ----KKKK ]
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
The _p_h_a_n_d_l_e_r driver is a generic driver for printers attached to the
built-in (/dev/plp*) parallel port. _p_h_a_n_d_l_e_r uses _l_i_b_p_o_d(_3) functions to
keep the printer object database (POD) current, provide feedback on any
engine errors encountered, and to serve as an example program for
developers. The source for phandler is part of the _I_m_p_r_e_s_s_a_r_i_o
_D_e_v_e_l_o_p_e_r'_s _K_i_t.
The driver opens and maintains the POD files for the specified printer.
The file <_p_r_i_n_t_e_r_n_a_m_e>._c_o_n_f_i_g contains the detailed information on the
printer's capabilities, <_p_r_i_n_t_e_r_n_a_m_e>._s_t_a_t_u_s contains the information on
operational status of the printer, and <_p_r_i_n_t_e_r_n_a_m_e>._l_o_g contains the
information on print job history. For more information on printer
database files refer to the _l_i_b_p_o_d(_3) man page.
While _p_h_a_n_d_l_e_r has the port open, it performs an advisory file lock on
the parallel port, thereby ensuring that only one _p_h_a_n_d_l_e_r accesses the
printer at a time.
_p_h_a_n_d_l_e_r also creates a child process to update the POD printer status
database. This child is killed automatically upon the parent's death.
UUUUSSSSAAAAGGGGEEEE
_p_h_a_n_d_l_e_r assumes that its input is coming from standard input
(stdin) unless a filename is specified after any and all
command line options.
PPPPaaaaggggeeee 1111
PPPPHHHHAAAANNNNDDDDLLLLEEEERRRR((((1111)))) IIIImmmmpppprrrreeeessssssssaaaarrrriiiioooo PPPPHHHHAAAANNNNDDDDLLLLEEEERRRR((((1111))))
----PPPP _p_r_i_n_t_e_r_n_a_m_e
specifies the printer with which _p_h_a_n_d_l_e_r is communicating.
_p_r_i_n_t_e_r_n_a_m_e is the name under which the System VR3 spooler
recognizes the printer, as given on the _l_p(_1) command line.
This option is required.
----eeee specifies that driver should exit immediately on fault. By
default, the driver waits indefinitely for faults to clear,
retrying any errors every several seconds, where the exact
number of seconds is defined in the POD config database entry
_e_r_r_o_r__r_e_t_r_y__w_a_i_t.
----ssss specifies that the driver should exit after ascertaining
printer status and updating the POD status file. If an error
is encountered, however, _p_h_a_n_d_l_e_r will block unless the ----eeee
switch is given as well. If a quick status update is what you
want, invoke _p_h_a_n_d_l_e_r with both the ----ssss and the ----eeee options to
insure that _p_h_a_n_d_l_e_r exits promptly.
----wwww Specify this flag to suppress warning messages in the printer
status file. By default, warning messages such as "low on ink"
or other non-fatal errors are written to the printer status
file.
----DDDD Turns on debugging information. Four levels of debugging
information are supported: none, coarse detail, medium detail,
and fine detail. These correspond to 0, 1, 2, and 3 or more ----DDDD
switches given on the command line. That is, multiple -D
options given on the command line result in progressively more
detailed debugging information.
----LLLL _l_o_g_f_i_l_e_n_a_m_e
specifies a filename to which error and debug information
should be appended. If this option is not specified, error and
debug information is appended to _p_h_a_n_d_l_e_r'_s standard error
(stderr), which is generally redirected by the System VR3
spooler to /_v_a_r/_s_p_o_o_l/_l_p/_l_o_g.
----RRRR specifies that the parallel port should be reset immediately
after opening it. This may have detrimental effects on some
printers, which may go offline for extended periods of time,
and therefore the ----RRRR option should be used with care.
PPPPaaaaggggeeee 2222
PPPPHHHHAAAANNNNDDDDLLLLEEEERRRR((((1111)))) IIIImmmmpppprrrreeeessssssssaaaarrrriiiioooo PPPPHHHHAAAANNNNDDDDLLLLEEEERRRR((((1111))))
----BBBB _b_u_f_f_e_r_s_i_z_e
specifies a positive number of bytes to buffer on each read and
write. Setting the _b_u_f_f_e_r_s_i_z_e to 1 (one) results in single-
byte reads and writes, which can be very inefficient. It is
recommended that if this option is specified, the _b_u_f_f_e_r_s_i_z_e be
an integral multiple of the system block size.
----IIII if specified enables sensing of EOI pin on the parallel port
(which is normally ignored).
----uuuu if specified the parallel port status is ignored. Only valid
when ----ssss is specified.
----SSSS _p_a_p_e_r_s_i_z_e
if specified the POD database will be updated with the paper
size. Valid paper sizes are listed in /usr/include/pod.h.
----dddd if specified, the driver will send a Control-D character at end
of job. Some printers use this to determine that the end of
the input stream has been reached.
----KKKK Ignore Interrupts. If specified, phandler will ignore
interrupts and will continue to send output to the parallel
port until end-of-file is encountered on standard input. If
_p_h_a_n_d_l_e_r receives a job cancellation (SIGTERM) signal it will
continue to read the input until end of file is reached and
will discard the input (it will not be sent to the printer).
This means that if a printer is unable to accept data,
cancelling the job may not kill the _p_h_a_n_d_l_e_r process
immediately. To do so, you must explicitly kill the process
with SIGKILL (9), or reboot the machine. If a problem is
detected on the parallel port then phandler will continue to
run until the problem clears (this prevents subsequent print
jobs from being sent to the parallel port until the problem is
cleared).
SSSSEEEEEEEE AAAALLLLSSSSOOOO
lp(1), lpadmin(1), libpod(3), libspool(3), printstatus(1), printpanel(1).
PPPPaaaaggggeeee 3333